home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994…tember: Reference Library / Dev.CD Sep 94.toast / Technical Documentation / C.S.M.P. Digests / csmp-digest-v3-045 / doubleCR.1 < prev   
Encoding:
Text File  |  1994-07-14  |  63.6 KB  |  1,738 lines

  1. C.S.M.P. Digest             Thu, 14 Jul 94       Volume 3 : Issue 45
  2.  
  3. Today's Topics:
  4.  
  5.         AppleShare programming?
  6.         Composing and INIT *NARF*
  7.         FSSpec of own INIT
  8.         Help: DragGrayRgn() Action Proc
  9.         Learning TCP
  10.         Modal Dialog Filter & Delete key
  11.         OLE on the Macintosh
  12.         Omission in Universal Headers: TrackControl()
  13.         Where does data go when no PPCRead is pending?
  14.  
  15.  
  16.  
  17. The Comp.Sys.Mac.Programmer Digest is moderated by Francois Pottier
  18. (pottier@clipper.ens.fr).
  19.  
  20. The digest is a collection of article threads from the internet newsgroup
  21. comp.sys.mac.programmer.  It is designed for people who read c.s.m.p. semi-
  22. regularly and want an archive of the discussions.  If you don't know what a
  23. newsgroup is, you probably don't have access to it.  Ask your systems
  24. administrator(s) for details.  If you don't have access to news, you may
  25. still be able to post messages to the group by using a mail server like
  26. anon.penet.fi (mail help@anon.penet.fi for more information).
  27.  
  28. Each issue of the digest contains one or more sets of articles (called
  29. threads), with each set corresponding to a 'discussion' of a particular
  30. subject.  The articles are not edited; all articles included in this digest
  31. are in their original posted form (as received by our news server at
  32. nef.ens.fr).  Article threads are not added to the digest until the last
  33. article added to the thread is at least two weeks old (this is to ensure that
  34. the thread is dead before adding it to the digest).  Article threads that
  35. consist of only one message are generally not included in the digest.
  36.  
  37. The digest is officially distributed by two means, by email and ftp.
  38.  
  39. If you want to receive the digest by mail, send email to listserv@ens.fr
  40. with no subject and one of the following commands as body:
  41.     help                        Sends you a summary of commands
  42.     subscribe csmp-digest Your Name    Adds you to the mailing list
  43.     signoff csmp-digest            Removes you from the list
  44. Once you have subscribed, you will automatically receive each new
  45. issue as it is created.
  46.  
  47. The official ftp info is //ftp.dartmouth.edu/pub/csmp-digest.
  48. Questions related to the ftp site should be directed to
  49. scott.silver@dartmouth.edu. Currently no previous volumes of the CSMP
  50. digest are available there.
  51.  
  52. Also, the digests are available to WAIS users.  To search back issues
  53. with WAIS, use comp.sys.mac.programmer.src. With Mosaic, use
  54. http://www.wais.com/wais-dbs/comp.sys.mac.programmer.html.
  55.  
  56.  
  57. -------------------------------------------------------
  58.  
  59. >From marcn@cs.uiuc.edu (Marc Nardulli)
  60. Subject: AppleShare programming?
  61. Date: 28 Jun 1994 20:04:09 GMT
  62. Organization: University of Illinois
  63.  
  64. Hello all,
  65.     I am looking for an easy way to allow users to log on to
  66. one of our Mac servers through Appleshare by using their Unix
  67. logon and password.  I have heard that there is some sort
  68. of AppleShare API out there, but I don't know anything 
  69. beyond that.  Does anybody know if the AppleShare API
  70. can be used for the purpose I want it for, and if so,
  71. where I might be able to get it?
  72.                 Thanks a lot,
  73.                                 Marc
  74.  
  75. - ---------------------------------------------
  76. Marc Nardulli        e-mail:marcn@ncsa.uiuc.edu
  77. Phone:               (217) 333-0158
  78. NCSA Mac Team
  79.  
  80. +++++++++++++++++++++++++++
  81.  
  82. >From rmah@panix.com (Robert S. Mah)
  83. Date: Tue, 28 Jun 1994 20:12:33 -0500
  84. Organization: One Step Beyond
  85.  
  86. marcn@cs.uiuc.edu (Marc Nardulli) wrote:
  87.  
  88. > I am looking for an easy way to allow users to log on to one of our Mac
  89. > servers through Appleshare by using their Unix logon and password.  I
  90. > have heard that there is some sort of AppleShare API out there, but I
  91. > don't know anything beyond that.  Does anybody know if the AppleShare
  92. > API can be used for the purpose I want it for, and if so, where I might
  93. > be able to get it?
  94.  
  95. You can purchase the AppleShare development kit from APDA.  I'm not sure
  96. if you can change the username/passwords in the users & groups files
  97. using the kit.
  98.  
  99. Cheers,
  100. Rob
  101. ___________________________________________________________________________
  102. Robert S. Mah  -=-  One Step Beyond  -=-  212-947-6507  -=-  rmah@panix.com
  103.  
  104. +++++++++++++++++++++++++++
  105.  
  106. >From jumplong@aol.com (Jump Long)
  107. Date: 29 Jun 1994 02:48:05 -0400
  108. Organization: America Online, Inc. (1-800-827-6364)
  109.  
  110. In article <rmah-280694201233@rmah.dialup.access.net>, rmah@panix.com
  111. (Robert S. Mah) writes:
  112.  
  113. >marcn@cs.uiuc.edu (Marc Nardulli) wrote:
  114. >
  115. >> I am looking for an easy way to allow users to log on to one of
  116. our Mac
  117. >> servers through Appleshare by using their Unix logon and password.
  118.  I
  119. >> have heard that there is some sort of AppleShare API out there,
  120. but I
  121. >> don't know anything beyond that.  Does anybody know if the
  122. AppleShare
  123. >> API can be used for the purpose I want it for, and if so, where I
  124. might
  125. >> be able to get it?
  126. >
  127. >You can purchase the AppleShare development kit from APDA.  I'm not
  128. sure
  129. >if you can change the username/passwords in the users & groups files
  130. >using the kit.
  131.  
  132. That's the AppleShare 3.0 Developer's Kit from APDA (last time I
  133. looked, it was around $99 US).
  134.  
  135. The UGLibrary interface that part of that kit gives you write access
  136. to the Users & Groups Data File *only* while the file server and
  137. AppleShare Admin (if you're using AppleShare) are *not* running. 
  138. There is not shared write access to the Users & Groups Data File
  139. between the server software and the UGLibrary interface - however,
  140. you can get read access to the Users & Groups Data File at any time.
  141.  
  142. One thing to note that many developers seem to miss...
  143.  
  144. Notice that the name of that SDK is "AppleShare 3.0 Developer's Kit",
  145. not "AppleShare Forever Developer's Kit". That means that it works
  146. with AppleShare 3.0 and AFP file servers based on the AppleShare 3.0
  147. source code.  That includes Macintosh File Sharing, AppleShare Pro,
  148. and AppleShare 4.0.x.  Most of the current AppleShare server code
  149. (and the SDK) is around 4 years old and it is based on the AppleShare
  150. 2.0 and 1.0 server code which is even older.  At some point, Apple
  151. will have to rewrite the server to add new features or to improve its
  152. performance.
  153.  
  154. Since UGLibrary is an object file that you link into your program, by
  155. using that code, you're making your program depend on the current
  156. implementations of the server and of the file format of the Users &
  157. Groups Data File.  If some future version of AppleShare no longer
  158. supports the current format of the Users & Groups Data File, your
  159. program will cease to work.  It not like a Trap where we can keep the
  160. API, but change the implementation beneath.
  161.  
  162. - Jim Luther
  163.  
  164.  
  165. +++++++++++++++++++++++++++
  166.  
  167. >From dnebing@andy.bgsu.edu (bgsuvax)
  168. Date: 29 Jun 1994 14:15:07 GMT
  169. Organization: Bowling Green State University
  170.  
  171. jumplong@aol.com (Jump Long) writes:
  172. > One thing to note that many developers seem to miss...
  173. > Notice that the name of that SDK is "AppleShare 3.0 Developer's Kit",
  174. > not "AppleShare Forever Developer's Kit". That means that it works
  175. > with AppleShare 3.0 and AFP file servers based on the AppleShare 3.0
  176. > source code.  That includes Macintosh File Sharing, AppleShare Pro,
  177. > and AppleShare 4.0.x.  Most of the current AppleShare server code
  178. > (and the SDK) is around 4 years old and it is based on the AppleShare
  179. > 2.0 and 1.0 server code which is even older.  At some point, Apple
  180. > will have to rewrite the server to add new features or to improve its
  181. > performance.
  182.  
  183.   I think that you miss-represent the developer's kit here, Jim.
  184. While the dev kit will work with full blown servers, some of the
  185. implementations do *not* work with system 7 file sharing.  There
  186. are numerous examples of this, the most important is the fact that
  187. on a sys7 server it is not possible to get the list of connected
  188. users (boy what a *big* missing piece, too).
  189.  
  190.   I must admit that I miss this capability.  I miss it so much that
  191. I tried to find out how the File Sharing Monitory does it.  By
  192. setting a trap break on the list manager trap selector (pack
  193. something or another) I was able to see how it was building the
  194. list of mounted volumes, but it uses some other method to build
  195. the list of connected users.
  196.  
  197.   I have even gone as far as trying to find a username for the
  198. connected user stored somewhere in memory (by searching with
  199. Macsbug) but no luck.
  200.  
  201.   As a side note, has anyone out there in net land figured out
  202. how to get this list?
  203.  
  204. Dave
  205.  
  206. ============================================================
  207. Dave Nebinger                    dnebing@andy.bgsu.edu
  208. Network Manager, Biology Dept.   dnebing@opie.bgsu.edu
  209. Bowling Green State University   dnebing@bgsuopie (bitnet)
  210. Bowling Green, OH 43403          #include <std_disclaimer.h>
  211.  
  212.              *THE* alt.sources.mac supporter!
  213.  
  214. +++++++++++++++++++++++++++
  215.  
  216. >From dnebing@andy.bgsu.edu (bgsuvax)
  217. Date: 29 Jun 1994 14:29:26 GMT
  218. Organization: Bowling Green State University
  219.  
  220. As a side note to the discussion of the appleshare
  221. dev kit, I have ported the pascal code which demos
  222. how to use the kit.  If anyone is interested, send
  223. me email.  Note that I will not supply the headers,
  224. you have to have the dev kit to get those (I wouldn't
  225. want to steal that $99 from apda :(
  226.  
  227. Dave
  228.  
  229. ============================================================
  230. Dave Nebinger                    dnebing@andy.bgsu.edu
  231. Network Manager, Biology Dept.   dnebing@opie.bgsu.edu
  232. Bowling Green State University   dnebing@bgsuopie (bitnet)
  233. Bowling Green, OH 43403          #include <std_disclaimer.h>
  234.  
  235.              *THE* alt.sources.mac supporter!
  236.  
  237. +++++++++++++++++++++++++++
  238.  
  239. >From marcn@sparc2.cs.uiuc.edu (Marc Nardulli)
  240. Date: 29 Jun 94 16:30:43 GMT
  241. Organization: University of Illinois at Urbana
  242.  
  243. jumplong@aol.com (Jump Long) writes:
  244.  
  245. >>You can purchase the AppleShare development kit from APDA.  I'm not
  246. >sure
  247. >>if you can change the username/passwords in the users & groups files
  248. >>using the kit.
  249.  
  250. >That's the AppleShare 3.0 Developer's Kit from APDA (last time I
  251. >looked, it was around $99 US).
  252.  
  253. >The UGLibrary interface that part of that kit gives you write access
  254. >to the Users & Groups Data File *only* while the file server and
  255. >AppleShare Admin (if you're using AppleShare) are *not* running. 
  256. >There is not shared write access to the Users & Groups Data File
  257. >between the server software and the UGLibrary interface - however,
  258. >you can get read access to the Users & Groups Data File at any time.
  259.  
  260. You mentioned that there was no way that you can change user's and
  261. passwords with the SDK while the server is running.  What I would
  262. like AppleShare do when a user logons on is to:
  263.  
  264. (1) Check the Users & Groups Data File to see if the correct user
  265.     and password are in there.  If they are then let them in.
  266.  
  267. (2) Check and see if the given user and password would authenticate
  268.     on one of our Unix servers.  If it would then let them on
  269.     and then update the Users & Groups Data File to hold the 
  270.     new user and password (note: user might not be new).
  271.  
  272. Is there any way that this is possible.  From your description of
  273. the AppleShare SDK, it can't.  Is there another way that I am overlooking?
  274. Any help would be appreciated.
  275.     Thanks,
  276.         Marc
  277.     
  278.  
  279. -- 
  280. Marc Nardulli             e:marcn@ncsa.uiuc.edu
  281. C&C Mac Team
  282. National Center for Supercomputing Applications
  283.  
  284. +++++++++++++++++++++++++++
  285.  
  286. >From jumplong@aol.com (Jump Long)
  287. Date: 30 Jun 1994 00:17:05 -0400
  288. Organization: America Online, Inc. (1-800-827-6364)
  289.  
  290. In article <2urvlb$q1f@falcon.bgsu.edu>, dnebing@andy.bgsu.edu
  291. (bgsuvax) writes:
  292.  
  293. > I think that you miss-represent the developer's kit here, Jim.
  294. > While the dev kit will work with full blown servers, some of the
  295. > implementations do *not* work with system 7 file sharing.
  296.  
  297. I didn't mean to misrepresent anything, but you're right, File
  298. Sharing doesn't implement the full AppleShare server control API.  I
  299. guess that's why it isn't called the AppleShare/File Sharing
  300. Developer's Kit :)
  301.  
  302. We could have just said that it was supported by AppleShare only. 
  303. However, I wrote most the original draft of the documentation and the
  304. only reason we even mentioned File Sharing is because I took the time
  305. to try every server control call under File Sharing, and if File
  306. Sharing didn't work the way AppleShare did, document it that way.  I
  307. figured it was better to get most of the interface than to get the
  308. message "that isn't supported" from Apple.
  309.  
  310. > As a side note to the discussion of the appleshare
  311. > dev kit, I have ported the pascal code which demos
  312. > how to use the kit.
  313.  
  314. I'm interested. I wrote the Pascal code and I've ported some of the
  315. code to C myself. During the process, I've found a few things that
  316. may cause problems in the future. If you send me your port, I'll put
  317. in the fixes and return it to you.  How's that for service?
  318.  
  319. - Jim Luther
  320.  
  321.  
  322. ---------------------------
  323.  
  324. >From Chuck Simciak <simciac@ccsmtp.ccf.org>
  325. Subject: Composing and INIT *NARF*
  326. Date: Tue, 28 Jun 1994 20:44:48 GMT
  327. Organization: Cleveland Clinic Foundation
  328.  
  329. I've searched high and low through my THINK C 7.0 manual,
  330. to the tech notes on my BookmarkCD.  I can't find anything
  331. on how to display an icon from an INIT during startup.  And
  332. more importantly how to "animate" the icon.  Everything
  333. I've found rambles about A5 worlds.  Couldn't find it in
  334. the FAQ, err...actually I couldn't find the FAQ.  (where is
  335. it?) Sample code would be tre-cool, particularly in
  336. Symantec THINK C which may or may not be tre-cool.
  337.  
  338. thanx....
  339.  
  340.     Chuck Simciak     !"Aw, forget it.  I'm done.  Here, have some
  341.    wxs@po.cwru.edu    ! dynamite down yer pants."
  342. simciac@ccsmtp.ccf.org!         - Slappy Squirrel
  343. WRUW 91.1 FM Cleveland!
  344.  
  345. +++++++++++++++++++++++++++
  346.  
  347. >From kenlong@netcom.com (Ken Long)
  348. Date: Wed, 29 Jun 1994 04:23:11 GMT
  349. Organization: NETCOM On-line Communication Services (408 261-4700 guest)
  350.  
  351. Connect to ftp ftp.uu.net and scout around to find all the faqs.  I 
  352. believe they are in the /usenet directory.
  353.  
  354. Then, connect to sumex and get the MacFTP list.  Or get it via Gopher 
  355. from MERIT (U. Michigan).  Somewhere in this info you'll find the ftp 
  356. site for alt.sources.mac.  I posted a developer kit, which I got from 
  357. AOL, which contains working shells - I tried them - for a Control Panel, 
  358. an INIT and a patch.
  359.  
  360. There are other ones out there.  Every once in a while, some new 
  361. programmer tries to do an INIT, control panel or a patch.  He has a hard 
  362. time of it.  But when he finally gets it, he gets so tickled with 
  363. himself, that he'll make shells for them and post them.  Those are not 
  364. the only people that post them, but it happens.
  365.  
  366. Some programmers that know how to do them, or do them a little better 
  367. than the kits or shells out there, or to fill a compatability need, will 
  368. also post them.
  369.  
  370. As far as just getting an INIT icon to show up, there are several 
  371. routes.  Get a source project for an init or control panel that already 
  372. does it and see how it's done.  Mark Pilgrim has put out several, such as 
  373. his "Mouse" series.  Jim Walker puts out a "ShowIcon7" source - available 
  374. in his directory, on the U. South Carolina ftp - along with other source.
  375.  
  376. There are INIT and control panel sources which come with Think C, but I 
  377. don't think there's any showInit source there (I don't mess with them much).
  378.  
  379. The original ShowInitIcon source has been updated and is in distribution, 
  380. too.
  381.  
  382. What I do, when I "want to be on the net, but am bored with everything 
  383. I've done so far" is I go down the ftp list and connect to new sites, see 
  384. what they have, get directory indexes, etc.  I've also noticed that many 
  385. colleges have  ftp's that may not be on the Mac ftp list. "ftp.cs.any.edu" 
  386. - a college would have to be very primative to not have a computer 
  387. science class or department (.cs.).
  388.  
  389. Check at ftp.apple.com, too.  Get their file list containing all their 
  390. files and you're bound to find at least ONE init or control panel source 
  391. that shows load icons, that works.
  392.  
  393. But there are plenty of them out there.  Enought to start putting "yet 
  394. another" prefixes on them.
  395.  
  396. -Ken-
  397.  
  398. +++++++++++++++++++++++++++
  399.  
  400. >From WalrathW@rferl.org (Wayne Walrath)
  401. Date: Thu, 30 Jun 1994 15:52:01 +0100
  402. Organization: RFE/RL Inc.
  403.  
  404. In article <1994Jun28.204448.5858@bme.ri.ccf.org>, Chuck Simciak
  405. <simciac@ccsmtp.ccf.org> wrote:
  406.  
  407. > I've searched high and low through my THINK C 7.0 manual,
  408. > to the tech notes on my BookmarkCD.  I can't find anything
  409. > on how to display an icon from an INIT during startup.  And
  410. > more importantly how to "animate" the icon.  Everything
  411. > I've found rambles about A5 worlds.  Couldn't find it in
  412. > the FAQ, err...actually I couldn't find the FAQ.  (where is
  413. > it?) Sample code would be tre-cool, particularly in
  414. > Symantec THINK C which may or may not be tre-cool.
  415. > thanx....
  416. >     Chuck Simciak     !"Aw, forget it.  I'm done.  Here, have some
  417. >    wxs@po.cwru.edu    ! dynamite down yer pants."
  418. > simciac@ccsmtp.ccf.org!         - Slappy Squirrel
  419. > WRUW 91.1 FM Cleveland!
  420.  
  421. Look for ShowIcon7 at umich
  422.  
  423. path: mirror/umich-mac/development/source/showicon7.sit.hqx
  424.  
  425. Here's some info from the .c file.
  426.  
  427.  
  428. >    ShowIcon7.c          ShowINIT compatible routine that shows 'ICN#' and 'iclx'
  429. >flavor icons.     For use by all INITs in System 7 and beyond.          This code
  430. >is based on Patrick C. Beard's ShowIconFamily     by Patrick C. Beard,
  431. >which in turn was derived from the     original ShowInit by Paul Mercer,
  432. >Darin Adler,     Paul Snively, and Steve Capps.          Modified by James W.
  433. >Walker for compatibility with IconWrap 1.2,     for use as a separate code
  434. >resource, and to use the new System 7     icon-drawing routines.  This code
  435. >is in the public domain.          Addresses for James W. Walker:
  436. >76367,2271@compuserve.com or         walkerj@math.scarolina.edu
  437.  
  438. As for animating it, I presume that isn't too hard to do using different
  439. icons. I've never used this code so I can't really comment.
  440.  
  441. -wayne
  442.  
  443. __ __
  444. Wayne Walrath
  445. walrathw@rferl.org
  446.  
  447. ---------------------------
  448.  
  449. >From EJ_Campbell@onenet.com (EJ Campbell)
  450. Subject: FSSpec of own INIT
  451. Date: 29 Jun 1994 18:31:18 -0000
  452. Organization: (none)
  453.  
  454. I want to open the data fork during startup of an INIT I am writing.  Does
  455. anyone know how to do this??  I want to be able to find it know matter where
  456. it is in the System Folder.  I just need a rutine that will return the FSSpec
  457. of my INIT.  Can this be done?? 
  458.  
  459. Thanks
  460.   -EJ-
  461. ***
  462. The opinions expressed above are those of the individual
  463. ***
  464. Sent from the founding system of the OneNet Member Network, OneNet Los Altos
  465. OneNet is a global network of FirstClass based communications servers.
  466. For more information, contact OneNet at:
  467. modem:415-948-1349, voice:303-444-2205, email:onenet@onenet.com
  468. ***
  469.  
  470. +++++++++++++++++++++++++++
  471.  
  472. >From resnick@uiuc.edu (Pete Resnick)
  473. Date: Thu, 30 Jun 1994 14:14:27 -0500
  474. Organization: University of Illinois at Urbana-Champaign
  475.  
  476. In article <-1829580993.32366611@onla.onenet.com>, EJ_Campbell@onenet.com wrote:
  477.  
  478. >I want to open the data fork during startup of an INIT I am writing.  Does
  479. >anyone know how to do this??  I want to be able to find it know matter where
  480. >it is in the System Folder.  I just need a rutine that will return the FSSpec
  481. >of my INIT.  Can this be done?? 
  482.  
  483. Someone should put this code in the FAQ. Upon entering the INIT code,
  484. CurResFile will be the resource file. Pass the result of CurResFile to the
  485. following:
  486.  
  487. OSErr RefNumToFSSpec(short refNum, FSSpecPtr fileSpec)
  488. {
  489.     OSErr errCode;
  490.     FCBPBRec fcb;
  491.     Str63 tempString;
  492.     
  493.     fcb.ioCompletion = nil;
  494.     fcb.ioNamePtr = tempString;
  495.     fcb.ioVRefNum = 0;
  496.     fcb.ioRefNum = refNum;
  497.     fcb.ioFCBIndx = 0L;
  498.     if((errCode = PBGetFCBInfoSync(&fcb)) == noErr) {
  499.         if(TrapAvailable(_Gestalt) &&
  500.            HasGestaltAttr(gestaltFSAttr, gestaltHasFSSpecCalls)) {
  501.             errCode = FSMakeFSSpec(fcb.ioFCBVRefNum,
  502.                                    fcb.ioFCBParID,
  503.                                    tempString,
  504.                                    fileSpec);
  505.         } else {
  506.             fileSpec->vRefNum = fcb.ioFCBVRefNum;
  507.             fileSpec->parID = fcb.ioFCBParID;
  508.             BlockMove(tempString, fileSpec->name, tempString[0]  +  1);
  509.         }
  510.     }
  511.     return(errCode);
  512. }
  513.  
  514. Just in case you are curious:
  515.  
  516. Boolean TrapAvailable(short theTrap)
  517. {
  518.     long trapAddress;
  519.     
  520.     if(theTrap & 0x0800) {
  521.         trapAddress = GetOSTrapAddress(theTrap);
  522.     } else {
  523.         if(theTrap & 0x0200) {
  524.             trapAddress = GetToolTrapAddress(_InitGraf);
  525.             if(trapAddress == GetToolTrapAddress(_InitGraf+0x0200))
  526.                 return(false);
  527.         }
  528.         trapAddress = GetToolTrapAddress(theTrap);
  529.     }
  530.     return(trapAddress != GetToolTrapAddress(_Unimplemented));
  531. }
  532.  
  533. #pragma parameter __A0 GestaltIL(__D0)
  534. long GestaltIL(long selector) = {0xA1AD,0x6702,0x91C8};
  535. #define HasGestaltAttr(x,y) (GestaltIL(x) & (1 << y))
  536.  
  537. pr
  538. -- 
  539. Pete Resnick        (...so what is a mojo, and why would one be rising?)
  540. Doctoral Student - Philosophy Department, Gregory Hall, UIUC
  541. System manager - Cognitive Science Group, Beckman Institute, UIUC
  542. Internet: resnick@uiuc.edu
  543.  
  544. ---------------------------
  545.  
  546. >From jcaufiel@cln.etc.bc.ca (Jannice Caufield)
  547. Subject: Help: DragGrayRgn() Action Proc
  548. Date: Tue, 28 Jun 1994 14:35:39 GMT
  549. Organization: Education Technology Centre of B.C.
  550.  
  551.  
  552. I am attempting to use DragGrayRgn() with an actionProc which
  553. updates various graphics as the mouse enters their region.
  554. Specifically, I use CopyBits() and CopyMask() to update the
  555. graphics.  I am attempting to achieve a result similar to the
  556. Finder's highlighting of screen icons as other icons are dragged
  557. across them.
  558.  
  559. My problem is that it appears as though DragGrayRgn() calls
  560. InvertRgn() to update the drag region.  My calls to CopyBits()
  561. and CopyMask() seem to interfere with the proper execution of
  562. InvertRgn() and images of the drag region are left on my graphics
  563. as the drag region leaves the graphic.
  564.  
  565. Is there anyone who can offer suggestions about how to get
  566. around this problem?
  567.  
  568. Brent Taylor <jcaufiel@cln.etc.bc.ca>
  569.  
  570.  
  571. +++++++++++++++++++++++++++
  572.  
  573. >From mgr@aggroup.aggroup.com (Mike Russell)
  574. Date: Tue, 28 Jun 1994 15:59:04 -0800
  575. Organization: the ag group, inc.
  576.  
  577. In article <1994Jun28.143539.25992@news.etc.bc.ca>, jcaufiel@cln.etc.bc.ca
  578. (Jannice Caufield) wrote:
  579.  
  580. > I am attempting to use DragGrayRgn()
  581. ...
  582. > My problem is that it appears as though DragGrayRgn() calls
  583. > InvertRgn() to update the drag region.
  584.  
  585. > Is there anyone who can offer suggestions about how to get
  586. > around this problem?
  587.  
  588. Here's one way to do it.
  589. In your actionproc, XOR out the region before/after you do your graphics.
  590.  
  591.         /* hide the drag outline */
  592.  
  593.         GetPenState(&ps);
  594.         PenMode(notPatXor);
  595.         PenPat(pat_gray);
  596.         FrameRgn(drag_region);
  597.  
  598.   <do your hilighting or whatever>
  599.         
  600.         /* restore the drag region and pen state */
  601.         FrameRgn(drag_region);
  602.   SetPenState(&ps);
  603.  
  604. +++++++++++++++++++++++++++
  605.  
  606. >From Jens Alfke <jens_alfke@powertalk.apple.com>
  607. Date: Wed, 29 Jun 1994 21:59:59 GMT
  608. Organization: Apple Computer
  609.  
  610. Brent Taylor, jcaufiel@cln.etc.bc.ca writes:
  611. > I am attempting to use DragGrayRgn() with an actionProc which
  612. > updates various graphics as the mouse enters their region.
  613. > Specifically, I use CopyBits() and CopyMask() to update the
  614. > graphics.  I am attempting to achieve a result similar to the
  615. > Finder's highlighting of screen icons as other icons are dragged
  616. > across them.
  617.  
  618. Consider using the Drag Manager. It takes care of virtually all of the work
  619. of animating the gray outline, including the tricky bits like updating it
  620. properly after things are drawn over it. And of course you get all kinds of
  621. other benefits as well...
  622. You can get it from ftp.apple.com.
  623.  
  624. --Jens Alfke
  625.   jens_alfke@powertalk              Rebel girl, rebel girl,
  626.             .apple.com              Rebel girl you are the queen of my world
  627.  
  628. ---------------------------
  629.  
  630. >From rosner@aol.com (Rosner)
  631. Subject: Learning TCP
  632. Date: 19 Jun 1994 20:59:03 -0400
  633. Organization: America Online, Inc. (1-800-827-6364)
  634.  
  635. I want to learn how to program tcp applications. I am especially in
  636. need of some books on the subject specific to the macintosh. As far
  637. as I can see there are none on the subject. Does anyone know? Are
  638. there any ftp sites where i can download sample code? And do I need
  639. more libraries and includes to program tcp apps for Think C?
  640. -dave
  641.  
  642. +++++++++++++++++++++++++++
  643.  
  644. >From Mark Hanrek <hanrek@cts.com>
  645. Date: Mon, 20 Jun 1994 05:30:45 GMT
  646. Organization: The Information Workshop
  647.  
  648. In article <2u2pkn$3gt@search01.news.aol.com> Rosner, rosner@aol.com
  649. writes:
  650.  
  651. > I want to learn how to program tcp applications. I am especially in
  652. > need of some books on the subject specific to the macintosh. As far
  653. > as I can see there are none on the subject. Does anyone know? Are
  654. > there any ftp sites where i can download sample code? And do I need
  655. > more libraries and includes to program tcp apps for Think C?
  656.  
  657.  
  658. The way I learned is an excellent way.
  659.  
  660. Grab the HyperCard stacks you find that do TCP related things in the
  661. /comm subsection of sumex and umich archives.
  662.  
  663. There you will find it truly simple to understand what you need to do to
  664. "make things go" with TCP.  In addition, it is in an environment that is
  665. easy to experiment in.
  666.  
  667. Then when you go to utilize it in your C application, you'll know exactly
  668. what to do, and when.
  669.  
  670. I can't imagine a simpler way to learn than this.  If you find a way, I'd
  671. like to know about it.
  672.  
  673.  
  674. Hope this helps.
  675.  
  676. Mark Hanrek
  677.  
  678. +++++++++++++++++++++++++++
  679.  
  680. >From jk@sparc13.cs.uiuc.edu (J Kreibich)
  681. Date: 20 Jun 94 16:02:04 GMT
  682. Organization: University of Illinois at Urbana
  683.  
  684.  
  685. >I want to learn how to program tcp applications. I am especially in
  686. >need of some books on the subject specific to the macintosh. As far
  687. >as I can see there are none on the subject. Does anyone know? 
  688.  
  689.   There are no "books" on how to do IP stuff with a Macintosh besides
  690.   the MacTCP Programmers Guide, which is avaiable via anon ftp from
  691.   seeding.apple.com.  That will teach you how to make the TCP calls to
  692.   MacTCP, but assumes you know quite a bit about networking already.
  693.   Although many will argue, I found the easiest way to learn MacTCP was
  694.   to understand the networking, and then just look in the guide as to
  695.   what calls do what.  To learn more about basic TCP/IP networking, I
  696.   would recoment "Internetworking with TCP/IP, Vol. 1" by Comer.  This
  697.   will teach you more than you need to know about how IP networks work.
  698.   With this basic understanding, the Programmers Guide makes a lot more
  699.   sense (Assuming you already understand Mac device drivers, interrupt
  700.   call-back code, etc, but that is just part of knowing how to program
  701.   a Mac and has little specifically to do with networking).
  702.  
  703. >Are
  704. >there any ftp sites where i can download sample code? And do I need
  705. >more libraries and includes to program tcp apps for Think C?
  706.  
  707.   Since everything is through the device manager, you will not need any
  708.   libs, but there are 4 or 5 includes you can use (also on seeding).
  709.   I got to pissed off at Apple's and made my own, however.
  710.  
  711.  -j
  712.  
  713. --
  714. Jay Kreibich       University of Illinois, U/C      Undergrad Computer Science
  715. - ----------------------------------------------------------------------------
  716.     "You think that I want to be understood..."  -They Might Be Giants
  717. - ----------------------------------------------------------------------------
  718. <a href="http://delphi.beckman.uiuc.edu/people/jay/main.html">My Home Page</a>
  719.  
  720. +++++++++++++++++++++++++++
  721.  
  722. >From andrew@gmvt4.concordia.ca (Andrew Francis)
  723. Date: Mon, 20 Jun 1994 17:59:42 GMT
  724. Organization: Faculty of Commerce, Concordia University
  725.  
  726. In article <jk.772128124@sparc13.cs.uiuc.edu> jk@sparc13.cs.uiuc.edu
  727. (J Kreibich) writes:
  728.  
  729. >>I want to learn how to program tcp applications. I am especially in
  730. >>need of some books on the subject specific to the macintosh. As far
  731. >>as I can see there are none on the subject. Does anyone know? 
  732.  
  733. >  There are no "books" on how to do IP stuff with a Macintosh besides
  734. >  the MacTCP Programmers Guide, which is avaiable via anon ftp from
  735. >  seeding.apple.com.  That will teach you how to make the TCP calls to
  736. >  MacTCP, but assumes you know quite a bit about networking already.
  737. >  Although many will argue, I found the easiest way to learn MacTCP was
  738. >  to understand the networking, and then just look in the guide as to
  739. >  what calls do what.  To learn more about basic TCP/IP networking, I
  740. >  would recoment "Internetworking with TCP/IP, Vol. 1" by Comer.  This
  741. >  will teach you more than you need to know about how IP networks work.
  742. >  With this basic understanding, the Programmers Guide makes a lot more
  743. >  sense (Assuming you already understand Mac device drivers, interrupt
  744. >  call-back code, etc, but that is just part of knowing how to program
  745. >  a Mac and has little specifically to do with networking).
  746.  
  747.    There is an article in I believe Develop 5 by Steven Faulkenburg
  748. called MacTCP Cookbook. It explains how MacTCP works by explaining 
  749. the construction of NewsWatcher. He also included code to make life
  750. easier for novice programmers.
  751.    An excellent book on TCP/IP programming is the Richard Steven's book
  752. "Unix Network Programming."
  753.  
  754. >>Are there any ftp sites where i can download sample code? And do I need
  755. >>more libraries and includes to program tcp apps for Think C?
  756. >
  757. >  Since everything is through the device manager, you will not need any
  758. >  libs, but there are 4 or 5 includes you can use (also on seeding).
  759. >  I got to pissed off at Apple's and made my own, however.
  760.  
  761.    Perhaps you want to look at GUSI ( I believe it is at nic.switch.ch).
  762. It supports the TCP/IP API. Also I believe someone has finally ported a
  763. version over to Think C.
  764.  
  765. --Andrew
  766.  
  767. +++++++++++++++++++++++++++
  768.  
  769. >From sandvik@newton.apple.com (Kent Sandvik)
  770. Date: Mon, 20 Jun 1994 23:51:27 GMT
  771. Organization: Dharma Bums, Inc.
  772.  
  773. > In article <2u2pkn$3gt@search01.news.aol.com> Rosner, rosner@aol.com
  774. > writes:
  775. > > I want to learn how to program tcp applications. I am especially in
  776. > > need of some books on the subject specific to the macintosh. As far
  777. > > as I can see there are none on the subject. Does anyone know? Are
  778. > > there any ftp sites where i can download sample code? And do I need
  779. > > more libraries and includes to program tcp apps for Think C?
  780.  
  781. You could also take a look at existing PD source code, such as 
  782. NewsWatcher and NCSA Telnet to see how the various MacTCP calls
  783. are used. I'm sure sumex-aim and similar places have the sources.
  784. Same with the MacDTS TCP samples, check out ftp.apple.com for 
  785. such ones.
  786.  
  787. Cheers, Kent
  788.  
  789. -- 
  790. Kent Sandvik
  791. sandvik@apple.com. ALink: KSAND -- Private activities on the net.
  792.  
  793. +++++++++++++++++++++++++++
  794.  
  795. >From howardk@cyberstore.ca (Howard Katz)
  796. Date: Mon, 20 Jun 1994 21:34:56 -0800
  797. Organization: Enigmatic Software
  798.  
  799. In article <CrpJBJ.GH4@newsflash.concordia.ca>, andrew@gmvt4.concordia.ca
  800. (Andrew Francis) wrote:
  801.  
  802. >    There is an article in I believe Develop 5 by Steven Faulkenburg
  803. > called MacTCP Cookbook. It explains how MacTCP works by explaining 
  804. > the construction of NewsWatcher. He also included code to make life
  805. > easier for novice programmers.
  806. >    An excellent book on TCP/IP programming is the Richard Steven's book
  807. > "Unix Network Programming."
  808.  
  809. Actually, it's Develop Number 6. We'll give you a cigar anyway.
  810.  
  811. I also recommend Steven's "TCP/IP Illustrated, Volume 1" from
  812. Addison-Wesley.
  813.  
  814. More, much more, than you ever wanted to know.
  815.  
  816. Howard Katz
  817.  
  818. +++++++++++++++++++++++++++
  819.  
  820. >From poorman@convex.com (Peter W. Poorman)
  821. Date: 21 Jun 94 20:36:59 GMT
  822. Organization: CONVEX Computer Corporation, Richardson, TX USA
  823.  
  824. In case in got overlooked for it's obviousness -- you need the MacTCP 
  825. programmer's documentation.  It's FTP-able from seeding.apple.com.
  826.  
  827. -- Pete
  828.    poorman@convex.com
  829.  
  830. +++++++++++++++++++++++++++
  831.  
  832. >From jf1@stirling.ac.uk (Mr Jonathon Fletcher)
  833. Date: 24 Jun 1994 15:05:25 GMT
  834. Organization: University of Stirling
  835.  
  836. Peter W. Poorman (poorman@convex.com) wrote:
  837. : In case in got overlooked for it's obviousness -- you need the MacTCP 
  838. : programmer's documentation.  It's FTP-able from seeding.apple.com.
  839.  
  840. Can anyone help me with this - the link from seeding is so slow that I
  841. get timed out after about 40K (of a 717K ascii file). Is there anywhere
  842. else I can get the documentation, or can anyone send it to me ?
  843.  
  844. The files I'm after are:
  845. seeding.apple.com
  846. /ess/public/mactcp/MacTCP_Dev_Kit/MacTCP_Prog_Guide.hqx
  847. /ess/public/mactcp/MacTCP_Dev_Kit/MacTCP_Prog_Guide.idx.hqx
  848.  
  849. Sincerely,
  850.  
  851. -Jon
  852.  
  853. --
  854.   Jonathon Fletcher, Information Services, Stirling University. 
  855.   j.fletcher@stirling.ac.uk (X400: "/S=jf1/O=stirling/PRMD=uk.ac/C=gb/")
  856.  
  857.  
  858. +++++++++++++++++++++++++++
  859.  
  860. >From tzs@u.washington.edu (Tim Smith)
  861. Date: 30 Jun 1994 00:07:42 GMT
  862. Organization: University of Washington School of Law, Class of '95
  863.  
  864. Mr Jonathon Fletcher <jf1@stirling.ac.uk> wrote:
  865. >Can anyone help me with this - the link from seeding is so slow that I
  866. >get timed out after about 40K (of a 717K ascii file). Is there anywhere
  867. >else I can get the documentation, or can anyone send it to me ?
  868. >
  869. >The files I'm after are:
  870. >seeding.apple.com
  871. >/ess/public/mactcp/MacTCP_Dev_Kit/MacTCP_Prog_Guide.hqx
  872. >/ess/public/mactcp/MacTCP_Dev_Kit/MacTCP_Prog_Guide.idx.hqx
  873.  
  874. I just grabbed them with no problem, and then downloaded them to my
  875. Mac.  Normally, I'd now delete them from my account here, but I'll
  876. keep 'em around for a couple days.  Try ftp'ing them from here--maybe
  877. the link will be faster.  They are in public/tzs on ftp.u.washington.edu.
  878.  
  879. --Tim Smith
  880.  
  881. ---------------------------
  882.  
  883. >From jbeeghly@u.washington.edu (Jeff Beeghly)
  884. Subject: Modal Dialog Filter & Delete key
  885. Date: 30 Jun 1994 07:12:06 GMT
  886. Organization: University of Washington
  887.  
  888.  
  889. DISCLAIMER:  I have been programming in 'C' for several years, but I am 
  890. new to Mac programming (although I do know how to program Windows & GEM).
  891. ALSO, I would like code not specific to sys 7 (ege.  must be able to run 
  892. under sys 6.5 as well).
  893.  
  894. In a text field within a modal dialog box, let's say I have the string, 
  895. "1234567".  If I move the cursor between the '4' and the '5' characters, 
  896. then press the DELETE key (which is actually the BACKSPACE key), the text 
  897. string becomes "123567".
  898.  
  899. If I had pressed the DEL key (located just below the HELP key on my extended 
  900. apple keyboard) instead, I would expect to get "123467"... hence, removing 
  901. the '5' character and shifting everything over to the right by one.
  902.  
  903. In actuallity, I get "1234 567", which seems very strange, but when I 
  904. tried this with several comercial apps out there, the same behaviour occured.
  905.  
  906. So I was wondering.... what would be the easiest way to achieve what I 
  907. want with a dialog filter?
  908.  
  909. Right now I have something like....
  910.  
  911. pascal Boolean DLOGFilter(theDialog, e, iPtr)
  912. DialogPtr    theDialog;
  913. EventRecord    *e;
  914. short        *iPtr;
  915. {
  916.     short    itemType;
  917.     Rect    itemRect;
  918.     Handle    item;
  919.     Str255    tempStr;
  920.     char    theChar;
  921.  
  922.  
  923.     if(e->what == keyDown || e->what == autoKey)
  924.     {
  925.         theChar = (e->message & charCodeMask);
  926.         if(theChar == kDeleteKey) //kDeleteKey = 127
  927.         {
  928.             GetDItem(theDialog, TEXT_ITEM, &itemType, &item,
  929.                 &itemRect);
  930.             GetIText(item, tempStr);
  931.             //put in routine here
  932.             return( TRUE );
  933.         }
  934.     }
  935. }
  936.  
  937.  
  938. the routine could do something like this:
  939.  
  940. 1) Find the location of the cursor.
  941. 2) move every character from that location to the end of the string over 
  942. by one.
  943.  
  944. for(i=start; i<tempStr[0]; i++)
  945. {
  946.     tempStr[i] = tempStr[i + 1];
  947. }
  948. tempStr[0]--;
  949.  
  950.  
  951. I would like to know:
  952.  
  953. 1) Is this the propper way to do this?
  954. 2) How do I determine where the cursor (or the begining of the selected 
  955. text) is at?
  956.  
  957. +++++++++++++++++++++++++++
  958.  
  959. >From aep@world.std.com (Andrew E Page)
  960. Date: Thu, 30 Jun 1994 13:35:24 GMT
  961. Organization: The World Public Access UNIX, Brookline, MA
  962.  
  963.  
  964.    I think that the first question that I'd like to ask is why
  965. you need to do the editing yourself instead of letting ModalDialog's
  966. default action do it for you?  If you return FALSE after your keyDown
  967. event ModalDialog continues to process the event and delete the
  968. character for you.  
  969.  
  970.    If you insist on editing the field yourself be aware that the
  971. Dialog manger maintains a single TERec for all the edit field in
  972. a dialog, and stores it in a field accessible by casing the DialogPtr
  973. as a DialogPeek.
  974.  
  975. -- 
  976. Andrew E. Page   (Warrior Poet) |   Decision and Effort The Archer and Arrow
  977. Mac Consultant                  |     The difference between what we are
  978. Macintosh and DSP Technology    |           and what we want to be.
  979.  
  980. +++++++++++++++++++++++++++
  981.  
  982. >From dubois@primate.wisc.edu (Paul DuBois)
  983. Date: 30 Jun 1994 13:48:37 -0500
  984. Organization: Castra Parvulorum
  985.  
  986. >From article <Cs7pr1.6En@world.std.com>, by aep@world.std.com (Andrew E Page):
  987. >    I think that the first question that I'd like to ask is why
  988. > you need to do the editing yourself instead of letting ModalDialog's
  989. > default action do it for you?  If you return FALSE after your keyDown
  990. > event ModalDialog continues to process the event and delete the
  991. > character for you.  
  992.  
  993. Read the original message again.  He got the undesired behavior by
  994. letting let the toolbox process the DEL key (different than the DELETE
  995. key).  I.e., the default action he got is not what he wants.
  996. -- 
  997. Paul DuBois
  998. dubois@primate.wisc.edu
  999.  
  1000. +++++++++++++++++++++++++++
  1001.  
  1002. >From Jens Alfke <jens_alfke@powertalk.apple.com>
  1003. Date: Thu, 30 Jun 1994 23:58:35 GMT
  1004. Organization: Apple Computer
  1005.  
  1006. Jeff Beeghly, jbeeghly@u.washington.edu writes:
  1007. > So I was wondering.... what would be the easiest way to achieve what I 
  1008. > want with a dialog filter?
  1009.  
  1010. Don't mess with the text directly; let TextEdit do it for you:
  1011.  
  1012. if selStart != selEnd
  1013.     TEKey(kDeleteKey);  // 0x08
  1014. else if( selEnd == teLength-1 )
  1015.     SysBeep(3);  // End of text
  1016. else
  1017.     TEKey(kRightArrowKey);
  1018.     TEKey(kDeleteKey);
  1019. end if
  1020.  
  1021. There's also a freeware extension that patches TextEdit to support the
  1022. forward-delete key. I think it's just called "Forward Delete".
  1023.  
  1024. --Jens Alfke
  1025.   jens_alfke@powertalk              Rebel girl, rebel girl,
  1026.             .apple.com              Rebel girl you are the queen of my world
  1027.  
  1028. +++++++++++++++++++++++++++
  1029.  
  1030. >From bb@lightside.com (Bob Bradley)
  1031. Date: Thu, 30 Jun 1994 09:50:42 -0800
  1032. Organization: Lightside, Inc.
  1033.  
  1034. I think the original poster is trying to implement the forward-delete key
  1035. which I don't think ModalDialog handles normally.
  1036.  
  1037. In your ModalDialog Filter, when you detect the forward-delete key being
  1038. pressed, get the textH field of the DialogRecord (textH is a handle to the
  1039. TextEdit record used for the dialog). then you can use the selStart and
  1040. selEnd fields of the TERec to determine what it selected or where the
  1041. insertion point is (ie if selStart == selEnd, nothing is selection and you
  1042. have the insertion point). The text is stored i the hText field of the
  1043. TERec so you can use that modify the actual text.
  1044.  
  1045. You may want to use the Script Manager cause you may be working with a
  1046. non-Roman script where the text may go right to left or characters may be
  1047. larger than one byte.
  1048.  
  1049. ---------------------------
  1050.  
  1051. >From mhteas@aol.com (Mhteas)
  1052. Subject: OLE on the Macintosh
  1053. Date: 23 Jun 1994 21:19:05 -0400
  1054. Organization: America Online, Inc. (1-800-827-6364)
  1055.  
  1056. Help!  I'm a Mac veteran trying to use OLE on the Macintosh.  I'm
  1057. currently hampered both by the lack of solid documentation and by the
  1058. provided sample code which is less than clear.  I do need to use OLE,
  1059. this is non-negotiable with my client.  So...
  1060.  
  1061. Is there anyone who's implemented OLE linking on the Macintosh that
  1062. can provide advice?
  1063.  
  1064. I've tried emailing, and leaving messages for Microsoft support and
  1065. evangelism people and leaving messages on their WINOBJ forum on
  1066. Compu$erve all with little result
  1067.  
  1068. If you can assist with advice, working sample code, or the voice of
  1069. experience, I can be reached at the email address below.
  1070.  
  1071. Many thanks,
  1072.  
  1073. Malcolm Teas
  1074. Teas Technology
  1075. mhteas@aol.com
  1076.  
  1077. +++++++++++++++++++++++++++
  1078.  
  1079. >From d88-jwa@dront.nada.kth.se (Jon Wdtte)
  1080. Date: 24 Jun 1994 08:53:58 GMT
  1081. Organization: The Royal Institute of Technology
  1082.  
  1083. In <2udca9$odt@search01.news.aol.com> mhteas@aol.com (Mhteas) writes:
  1084.  
  1085. >Is there anyone who's implemented OLE linking on the Macintosh that
  1086. >can provide advice?
  1087.  
  1088. No.
  1089.  
  1090. Basically, OLE sucks. OpenDoc will be out Any Year Now and has a much
  1091. clearer and better usage model and content model. If you support OpenDoc,
  1092. Apple will provide interchangeability with OLE 2.
  1093.  
  1094. Some reasons why OpenDoc is cooler than OLE 2:
  1095.  
  1096. - OpenDoc does click-and-type however deep you want.
  1097.   OLE has you to click three times to get at a text item in a chart
  1098.   in a text item.
  1099.  
  1100. - OpenDoc is backed by several large industry vendors, and has freely
  1101.   available source code as an OPEN standard.
  1102.   OLE is backed/kept by MS, and you can't get source.
  1103.  
  1104. - OpenDoc builds on the Bento storage format.
  1105.   OLE doesn't (and doesn't even have anything similar)
  1106.  
  1107. - OpenDoc lets you have non-rectangular part frames.
  1108.   OLE doesn't.
  1109.  
  1110. - OpenDoc lets you partly overlay part frames a la overlapping windows
  1111.   and also have transparent parts.
  1112.   OLE doesn't.
  1113.  
  1114. I could be wrong on one of these, but I don't think so.
  1115. Basically, OLE is, as anything operating-system-like MS does,
  1116. substandard and a crock. (Well, NT might actually be a good
  1117. server platform, but apart from that)
  1118.  
  1119. Cheers,
  1120.  
  1121.  
  1122.                     / h+
  1123. -- 
  1124.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  1125.  
  1126.    What we need is a good GNU [...] licence manager implementation.
  1127.                      -- Raphael Manfredi
  1128.  
  1129. +++++++++++++++++++++++++++
  1130.  
  1131. >From Aaron Bratcher <aaron_bratcher@fpm.uchicago.edu>
  1132. Date: Fri, 24 Jun 1994 18:22:46 GMT
  1133. Organization: University of Chicago
  1134.  
  1135. In article <2ue6v6$fs3@news.kth.se> Jon W!tte, d88-jwa@dront.nada.kth.se writes:
  1136. >Basically, OLE sucks. OpenDoc will be out Any Year Now and has a much
  1137. >clearer and better usage model and content model. If you support OpenDoc,
  1138. >Apple will provide interchangeability with OLE 2.
  1139.  
  1140. Something I just read in "Client/Server Today" in the June 94 issue on page 84:
  1141.  
  1142.      If the Apple/IBM/WordPerfect/Novell/et al. OpenDoc spec wins the day, then you will see truly cross-platform, plug-and-play componentware sprouting up all over the place. But if Microsoft's OLE wins instead, then all you will ever have is MS Office left to buy, with some ISV stragglers
  1143. feeding off the crumbs from Big Bill's groaning board.
  1144.      Please, forget all the Microsoft OLE marketing hype; surely you are aware that "Open" Microsoft just tried to force software developers to sign a non-disclosure agreement that said if they developed for OLE, they were forbidden from developing for OpenDoc. (Note: It just backed down from this
  1145. silliness.)
  1146.      Bear in mind, Microsoft is facing possible Federal Trace Commission anti-trust action. If it dares to pull this type of stunt under these circumstances, do you think Microsoft will give up control of both the desktop OS and the applications willingly?
  1147.  
  1148. /* endquote */
  1149.  
  1150. I'm sorry, but that makes me want to toss all the Microsoft products I have (I only have 1 product of theirs I use and I regret it) and do my best to make things that will directly compete against them using the OpenDoc spec.
  1151.  
  1152. - ------------------------------------------------------------------------
  1153.      MegaWatt                         |    _____  _____  _____   _   _ 
  1154.                                       |   |__  / | ___ || ___ \ | | | |
  1155. AKA  Aaron L. Bratcher                |     / /  | |_| || |_/ / | | | |
  1156.      University of Chicago            |    / /__ | ___ ||  __/  |_| |_|
  1157.      aaron_bratcher@fpm.uchicago.edu  |   |_____||_| |_||_|     (_) (_)
  1158. - ------------------------------------------------------------------------
  1159.  
  1160. +++++++++++++++++++++++++++
  1161.  
  1162. >From Jens Alfke <jens_alfke@powertalk.apple.com>
  1163. Date: Fri, 24 Jun 1994 18:53:56 GMT
  1164. Organization: Apple Computer
  1165.  
  1166. Jon W!tte, d88-jwa@dront.nada.kth.se writes:
  1167. <lots of nice things about OpenDoc and savage things about OLE>
  1168.  
  1169. Thanks, Jon! Couldn't have said it better myself. That 8100AV will be in the
  1170. mail to you shortly.
  1171.  
  1172. Incidentally, if anyone would like more info about OpenDoc, there are white
  1173. papers and such available by anon ftp from cil.org.
  1174.  
  1175. --Jens Alfke
  1176.   jens_alfke@powertalk              Rebel girl, rebel girl,
  1177.             .apple.com              Rebel girl you are the queen of my world
  1178.  
  1179. +++++++++++++++++++++++++++
  1180.  
  1181. >From ejohnson@netcom.com (Eric Johnson)
  1182. Date: Fri, 24 Jun 1994 20:26:48 GMT
  1183. Organization: NETCOM On-line Communication Services (408 261-4700 guest)
  1184.  
  1185. d88-jwa@dront.nada.kth.se (Jon Wdtte) writes:
  1186.  
  1187. >- OpenDoc builds on the Bento storage format.
  1188. >  OLE doesn't (and doesn't even have anything similar)
  1189.  
  1190. I believe this is false.  OLE does have something similar, its known
  1191. as the structured storage model.  It allows one to store files within
  1192. a file.
  1193.  
  1194. -Eric
  1195. -- 
  1196. Eric E Johnson                    ejohnson@netcom.netcom.com
  1197. "I need a kill file for TV" - Jim Browne while watching COPS
  1198.  
  1199. +++++++++++++++++++++++++++
  1200.  
  1201. >From howard@netcom.com (Howard Berkey)
  1202. Date: Sat, 25 Jun 1994 05:43:25 GMT
  1203. Organization: Netcom Online Communications Services (408-241-9760 login: guest)
  1204.  
  1205. In article <1994Jun24.185356.19583@gallant.apple.com> Jens Alfke <jens_alfke@powertalk.apple.com> writes:
  1206. >Jon W!tte, d88-jwa@dront.nada.kth.se writes:
  1207. ><lots of nice things about OpenDoc and savage things about OLE>
  1208. >
  1209. >Thanks, Jon! Couldn't have said it better myself. That 8100AV will be in the
  1210. >mail to you shortly.
  1211. >
  1212.  
  1213. Careful!  The way I've heard Swedish ad laws explained, you're obliged
  1214. to give him one now :-) :-)
  1215.  
  1216. >Incidentally, if anyone would like more info about OpenDoc, there are white
  1217. >papers and such available by anon ftp from cil.org.
  1218. >
  1219.  
  1220. Thanks!
  1221.  
  1222. -H-
  1223.  
  1224.  
  1225. >--Jens Alfke
  1226. >  jens_alfke@powertalk              Rebel girl, rebel girl,
  1227. >            .apple.com              Rebel girl you are the queen of my world
  1228.  
  1229.  
  1230. -- 
  1231. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  1232. Howard Berkey                                             howard@netcom.com   
  1233.                   Eat at C-Ko's
  1234. ...........................................................................
  1235.  
  1236. +++++++++++++++++++++++++++
  1237.  
  1238. >From mhteas@aol.com (Mhteas)
  1239. Date: 25 Jun 1994 09:50:14 -0400
  1240. Organization: America Online, Inc. (1-800-827-6364)
  1241.  
  1242. In article <2ue6v6$fs3@news.kth.se>, d88-jwa@dront.nada.kth.se (Jon
  1243. Wtte) writes:
  1244.  
  1245. >Basically, OLE sucks. OpenDoc will be out Any Year Now and has a
  1246. much
  1247. >clearer and better usage model and content model.
  1248.  
  1249. After trying to use OLE, I whole-heartedly agree with the Jon's
  1250. statement.  I avoid using MS products when I can.  MS is a good
  1251. demonstration that marketing ability and quality technology are
  1252. completely different things.  Working around Windows programmers is a
  1253. good way to learn new curse words.  (So Jen, when do I expect *my*
  1254. PowerMac? :)
  1255.  
  1256. However, as much as I would prefer to use OpenDoc (don't you think I
  1257. suggested it?), I'm working on contract.  The client spec'ed OLE for
  1258. proprientary reasons of their own.  As I specifically mentioned in my
  1259. earlier request, "I do need to use OLE, this is non-negotiable with
  1260. my client."
  1261.  
  1262. Just asking for info, don't jump on me :)
  1263.  
  1264. Thanks anyhow,
  1265.  
  1266. Malcolm H. Teas                   Software by contract for 
  1267. Teas Technology                   the Macintosh and Newton
  1268. mhteas@aol.com
  1269. Voice/fax: (603) 427-0231 (USA)
  1270.  
  1271. +++++++++++++++++++++++++++
  1272.  
  1273. >From rob@eats.com (Rob Newberry)
  1274. Date: Sat, 25 Jun 1994 22:23:34 UNDEFINED
  1275. Organization: Education and Technology Solutions
  1276.  
  1277. >Basically, OLE sucks. OpenDoc will be out Any Year Now and has a much
  1278. >clearer and better usage model and content model. If you support OpenDoc,
  1279. >Apple will provide interchangeability with OLE 2.
  1280.  
  1281. Ok, Jon...OLE may not be all OpenDoc is, BUT...
  1282.  
  1283. OLE is here now.  OpenDoc is not.  And it may not be for a while.  And once it 
  1284. is, I doubt there will be as much help in learning it as there is for learning 
  1285. OLE -- everyone and their dog is starting to use OLE under Windows, and there 
  1286. are already several great texts on using it.  Where is the same for OpenDoc?  
  1287. Nowhere.
  1288.  
  1289. I see no need to defend Microsoft -- in fact, I'd just as soon jump in on the 
  1290. attack.  But OLE is perhaps the best thing Microsoft ever did, and is 
  1291. probably the most innovative technology they've ever come up with.  Everywhere 
  1292. else, Windows is a copy of other ideas.  But with OLE, Microsoft is actually 
  1293. leading most of the game (yes, I'm aware that they didn't completely come up 
  1294. with OLE from scratch, but hell, very few companies ever completely invent 
  1295. something like component computing -- Microsoft's technique is simply a good 
  1296. starting point, and a truly good effort for as young as the technology is).
  1297.  
  1298. Sure, if all you want to do is Mac development, you can wait for OpenDoc.  It 
  1299. will be better than OLE.  But then again, Apple and friends can draw from 
  1300. Microsoft's mistakes.  On the other hand, Microsoft will continue to improve 
  1301. OLE.  And there will probably always be more support and documentation for 
  1302. learning OLE.
  1303.  
  1304. One last note.  While Bento is a wonderful thing, OLE does have the compound 
  1305. file system, which is very nice.  Bento may let you do a whole lot more, but 
  1306. compound files do almost everything I can think of that I need to do compound 
  1307. documents.
  1308.  
  1309. I'd love to see OpenDoc do very well for Apple.  But OLE is here now.  And 
  1310. there's lots of information about how to use it.
  1311.  
  1312. (And while I'm still upon this soapbox, the guy said he had to use OLE because 
  1313. it was in a contract.  Why would you tell him, "don't do it" ?  Did you want 
  1314. to see him fired?  For heaven's sake, at least tell him, "I'm sorry you have 
  1315. to do that, but here's the best info I can give you."  And why shouldn't 
  1316. anyone learn OLE?  Why should a programmer avoid learning any technology?  Go 
  1317. ahead, if you can, learn OLE.  It'll only make you a better programmer (even 
  1318. if it's just because you see lots of design flaws :-), and a lot more 
  1319. marketable as a professional.  Hell, learn as much as you can.  Don't be 
  1320. scared to dig in, just because something easier may come along.  Sheesh.)
  1321.  
  1322. Rob
  1323.  
  1324.  
  1325. *******************************************************************
  1326. Rob Newberry               Education and Technology Solutions, Inc.
  1327. Email: rob@eats.com        4303 Parkland Court
  1328. Phone: 301 438 3915        Rockville, Maryland 20853            
  1329. FAX: 301 438 3748
  1330.  
  1331.               "He who laughs first didn't get the joke."
  1332.             -- Paul Westerberg
  1333. *******************************************************************
  1334.  
  1335. +++++++++++++++++++++++++++
  1336.  
  1337. >From d88-jwa@dront.nada.kth.se (Jon Wdtte)
  1338. Date: 26 Jun 1994 13:24:01 GMT
  1339. Organization: The Royal Institute of Technology
  1340.  
  1341. >>Thanks, Jon! Couldn't have said it better myself. That 8100AV will be in the
  1342. >>mail to you shortly.
  1343.  
  1344. >Careful!  The way I've heard Swedish ad laws explained, you're obliged
  1345. >to give him one now :-) :-)
  1346.  
  1347. Indeed, else we mount an Air Force expedition and come get him to
  1348. have him stand trial here. Or something.
  1349.  
  1350. Cheers,
  1351.  
  1352.                     / h+
  1353. -- 
  1354.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  1355.   "And now, from the makers of EDLIN, comes: Windows NT!"
  1356.  
  1357. +++++++++++++++++++++++++++
  1358.  
  1359. >From d88-jwa@dront.nada.kth.se (Jon Wdtte)
  1360. Date: 26 Jun 1994 13:31:19 GMT
  1361. Organization: The Royal Institute of Technology
  1362.  
  1363. In <rob.200.0745C41D@eats.com> rob@eats.com (Rob Newberry) writes:
  1364.  
  1365. >OLE is here now.  OpenDoc is not.  And it may not be for a while.  And once it 
  1366. Huh? Well, these CDs I have must be figments of my imagination then.
  1367.  
  1368. >is, I doubt there will be as much help in learning it as there is for learning 
  1369. And Apple didn't actually hold free kitchens for learning OpenDoc;
  1370. they just drug people and hypnotize them to think they do. (Before
  1371. everyone wants one: you have to be an active developer who shows
  1372. interest at adopting new technologies. Tals to your evangelist. And
  1373. travel & lodging is on you)
  1374.  
  1375. >Sure, if all you want to do is Mac development, you can wait for OpenDoc.  It 
  1376.  
  1377. With a half-year lead-time for product development, chances are that
  1378. OpenDoc is on the market when your component gets out.
  1379.  
  1380. >file system, which is very nice.  Bento may let you do a whole lot more, but 
  1381. >compound files do almost everything I can think of that I need to do compound 
  1382. >documents.
  1383.  
  1384. Bento actively encourages you to let different objects access each
  1385. OTHERs data, even without using Semantic Events (like scripting)
  1386. Bento also has drafts of the Bento file.
  1387.  
  1388. >it was in a contract.  Why would you tell him, "don't do it" ?  Did you want 
  1389. >to see him fired?  For heaven's sake, at least tell him, "I'm sorry you have 
  1390.  
  1391. Oh, no, I said OpenDoc will cross-support OLE, so if his deadline is
  1392. suffucuently far from now, he could go OpenDoc. Myself, I'm picky about
  1393. customers these days. After all, he's paying me to enlighten him about
  1394. stuff I know more about than him, and if he won't take it without really
  1395. good reasons, well, I suggest he uses someone cheaper and more gullible.
  1396.  
  1397. >marketable as a professional.  Hell, learn as much as you can.  Don't be 
  1398. >scared to dig in, just because something easier may come along.  Sheesh.)
  1399.  
  1400. I had the OLE 2 for Mac seed, but it scared me away.
  1401.  
  1402. Cheers,
  1403.  
  1404.                     / h+
  1405. -- 
  1406.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  1407.   "And now, from the makers of EDLIN, comes: Windows NT!"
  1408.  
  1409. +++++++++++++++++++++++++++
  1410.  
  1411. >From isis@netcom.com (Mike Cohen)
  1412. Date: Sun, 26 Jun 1994 21:21:07 GMT
  1413. Organization: ISIS International
  1414.  
  1415. d88-jwa@dront.nada.kth.se (Jon Wdtte) writes:
  1416.  
  1417. >I had the OLE 2 for Mac seed, but it scared me away.
  1418.  
  1419. I also got it & was very disgusted by it. After looking at it a few times, I
  1420. decided not to bother.
  1421. -- 
  1422. Mike Cohen - isis@netcom.com
  1423. NewtonMail, eWorld: MikeC / ALink: D6734 / AOL: MikeC20
  1424. Home Page: file://ftp.netcom.com/pub/isis/home.html
  1425.  
  1426. +++++++++++++++++++++++++++
  1427.  
  1428. >From Aaron Bratcher <aaron_bratcher@fpm.uchicago.edu>
  1429. Date: Mon, 27 Jun 1994 12:01:56 GMT
  1430. Organization: University of Chicago
  1431.  
  1432. In article <rob.200.0745C41D@eats.com> Rob Newberry, rob@eats.com writes:
  1433. >Sure, if all you want to do is Mac development, you can wait for OpenDoc...
  1434.  
  1435. Isn't that kinda like not supporting AppleEvents because it's not on Windows? One good turn deseres another  :P
  1436.  
  1437. Seriously... I think that waiting for OpenDoc will be well worth it. OLE is here now, but I personally would rather not give Microsoft any more money.
  1438.  
  1439. - ------------------------------------------------------------------------
  1440.      MegaWatt                         |    _____  _____  _____   _   _ 
  1441.                                       |   |__  / | ___ || ___ \ | | | |
  1442. AKA  Aaron L. Bratcher                |     / /  | |_| || |_/ / | | | |
  1443.      University of Chicago            |    / /__ | ___ ||  __/  |_| |_|
  1444.      aaron_bratcher@fpm.uchicago.edu  |   |_____||_| |_||_|     (_) (_)
  1445. - ------------------------------------------------------------------------
  1446.  
  1447. +++++++++++++++++++++++++++
  1448.  
  1449. >From Jens Alfke <jens_alfke@powertalk.apple.com>
  1450. Date: Tue, 28 Jun 1994 00:53:53 GMT
  1451. Organization: Apple Computer
  1452.  
  1453. Rob Newberry, rob@eats.com writes:
  1454. > Sure, if all you want to do is Mac development, you can wait for OpenDoc.
  1455.  
  1456. Remember that OpenDoc is being developed for many platforms, not just the
  1457. Mac. Alpha seeds for Windows and OS/2 are now available from WordPerfect and
  1458. IBM respectively, and Unix (AIX and others) ports shouldn't be far behind.
  1459. The OpenDoc Parts Framework will also support Mac/Windows cross-platform part
  1460. development.
  1461.   All this I think makes OpenDoc pretty compelling to people considering
  1462. cross platform development. (How soon before we see OLE for Unix? Or for
  1463. native OS/2 apps?)
  1464.  
  1465. --Jens Alfke
  1466.   jens_alfke@powertalk              Rebel girl, rebel girl,
  1467.             .apple.com              Rebel girl you are the queen of my world
  1468.  
  1469. +++++++++++++++++++++++++++
  1470.  
  1471. >From Neil Ticktin <publisher@xplain.com>
  1472. Date: Tue, 28 Jun 1994 03:28:13 GMT
  1473. Organization: MacTech Magazine/Xplain Corp.
  1474.  
  1475. In article <2udca9$odt@search01.news.aol.com> Mhteas, mhteas@aol.com
  1476. writes:
  1477. >Is there anyone who's implemented OLE linking on the Macintosh that
  1478. >can provide advice?
  1479.  
  1480. Malcolm,
  1481.  
  1482. Long time -- no talk.
  1483.  
  1484. FYI:  The August issue of MacTech Magazine will have the OLE 2.0 SDK CD
  1485. *bound into* the magazine.  There's some sample articles on using OLE and
  1486. another article on OpenDoc vs. OLE.  I believe that the "SimpleServer"
  1487. article which was written by Microsoft to show off OLE might help you --
  1488. but I'd have to double check to make sure.
  1489.  
  1490. This issue will be available at the MacTech Magazine booth at Macworld in
  1491. World Trade Center.  If you are a subscriber, it will show up on your
  1492. door step automatically.  If not, come by and see us to get a copy.
  1493.  
  1494. Hope it helps,
  1495.  
  1496. Neil Ticktin
  1497. MacTech Magazine
  1498. - ---------------------------------------------------------------------
  1499.            Neil Ticktin, MacTech Magazine (formerly MacTutor)
  1500. PO Box 250055, Los Angeles, CA 90025 * 310-575-4343 * Fax: 310-575-0925
  1501.  For more info, anonymous ftp to ftp.netcom.com and cd to /pub/xplain
  1502.   custservice@xplain.com * editorial@xplain.com * adsales@xplain.com
  1503. marketing@xplain.com * accounting@xplain.com * pressreleases@xplain.com
  1504.    progchallenge@xplain.com * publisher@xplain.com * info@xplain.com
  1505.  
  1506. +++++++++++++++++++++++++++
  1507.  
  1508. >From jonpugh@netcom.com (Jon Pugh)
  1509. Date: Thu, 30 Jun 1994 00:49:58 GMT
  1510. Organization: NETCOM On-line Communication Services (408 261-4700 guest)
  1511.  
  1512. Jon Wdtte (d88-jwa@dront.nada.kth.se) wrote:
  1513. > >>Thanks, Jon! Couldn't have said it better myself. That 8100AV will be in the
  1514. > >>mail to you shortly.
  1515.  
  1516. > >Careful!  The way I've heard Swedish ad laws explained, you're obliged
  1517. > >to give him one now :-) :-)
  1518.  
  1519. > Indeed, else we mount an Air Force expedition and come get him to
  1520. > have him stand trial here. Or something.
  1521.  
  1522. I thought you guys were neutral and all your army does is make pocket knives.
  1523.  
  1524. ;)
  1525.  
  1526. Jon
  1527.  
  1528. +++++++++++++++++++++++++++
  1529.  
  1530. >From quinn@cs.uwa.edu.au (Quinn "The Eskimo!")
  1531. Date: Fri, 01 Jul 1994 10:58:35 +0800
  1532. Organization: Department of Computer Science, The University of Western Australia
  1533.  
  1534. In article <jonpughCs6qBA.B0G@netcom.com>, jonpugh@netcom.com (Jon Pugh) wrote:
  1535.  
  1536. >Jon Wdtte (d88-jwa@dront.nada.kth.se) wrote:
  1537. >> >>Thanks, Jon! [...]
  1538. >
  1539. >I thought you guys were neutral and all your army does is make pocket knives.
  1540.  
  1541. Yeah, the Swedish Army Knife, a marvellous piece of badge engineering,
  1542. perfect for those of us who prefer gold-on-blue to the more garish
  1543. white-on-red.
  1544. -- 
  1545. Quinn "The Eskimo!"      <quinn@cs.uwa.edu.au>     "Support HAVOC!"
  1546. Department of Computer Science, The University of Western Australia
  1547.  
  1548. +++++++++++++++++++++++++++
  1549.  
  1550. >From Dan_Menchaca@quickmail.apple.com (Dan)
  1551. Date: Fri, 01 Jul 1994 18:47:45 -0700
  1552. Organization: Apple
  1553.  
  1554.  
  1555. > However, as much as I would prefer to use OpenDoc (don't you think I
  1556. > suggested it?), I'm working on contract.  The client spec'ed OLE for
  1557. > proprientary reasons of their own.  As I specifically mentioned in my
  1558. > earlier request, "I do need to use OLE, this is non-negotiable with
  1559. > my client."
  1560. So what's the problem.  OpenDoc will support OLE.  So, you can have OpenDoc
  1561. modules and still have OLE too.  So, go out and use OpenDoc as the
  1562. container object of choice.
  1563.  
  1564. +++++++++++++++++++++++++++
  1565.  
  1566. >From rickard@softlab.se (Rickard Andersson)
  1567. Date: 30 Jun 1994 17:01:38 +0200
  1568. Organization: SoftLab ab
  1569.  
  1570. jonpugh@netcom.com (Jon Pugh) writes:
  1571. >Jon Wdtte (d88-jwa@dront.nada.kth.se) wrote:
  1572. >> >>Thanks, Jon! Couldn't have said it better myself. That 8100AV will be in the
  1573. >> >>mail to you shortly.
  1574.  
  1575. >> >Careful!  The way I've heard Swedish ad laws explained, you're obliged
  1576. >> >to give him one now :-) :-)
  1577.  
  1578. >> Indeed, else we mount an Air Force expedition and come get him to
  1579. >> have him stand trial here. Or something.
  1580.  
  1581. >I thought you guys were neutral and all your army does is make pocket knives.
  1582.  
  1583. >;)
  1584.  
  1585. >Jon
  1586.  
  1587. We aren't more neutral than anybody else :-)
  1588. And we buy our pocket knives from Switzerland :-)
  1589.  
  1590.  
  1591. | Rickard Andersson       rickard@softlab.se |     be in harmony     
  1592. +--------------------------------------------+ with the eye of viewer
  1593. | A swede programming Macintosh shareware... |   that is the answer  
  1594. +--------------------------------------------+         /RAN          
  1595.  
  1596. ---------------------------
  1597.  
  1598. >From oster@netcom.com (David Phillip Oster)
  1599. Subject: Omission in Universal Headers: TrackControl()
  1600. Date: Thu, 30 Jun 1994 15:16:48 GMT
  1601. Organization: Netcom Online Communications Services (408-241-9760 login: guest)
  1602.  
  1603. I am still using Apple's Universal Headers that came with THINK C 7,
  1604. and I want to know if a missing piece in them has been fixed.
  1605.  
  1606. Oddly enough, the missing piece is with the system call TrackControl().
  1607. It is odd, because TrackControl() is the system call that
  1608. InsideMac:PowerPC uses as an example of calling a system call with
  1609. niversal procedure pointers.
  1610.  
  1611. The problem is that that InsideMac:Toolbox Essentials says that
  1612. TrackControl() can be called two ways:
  1613.  
  1614. 1.) with a callback which will be called during a sustained mousedown
  1615. in a control part like a scroll-bar arrow. This callback will be called
  1616. with the ControlHandle and part code as its two arguments.
  1617.  
  1618. 2) with a callback which will be called during a sustained mousedown
  1619. and drag on a control part like a scroll-bar thumb. This callback will
  1620. be called with no arguments.
  1621.  
  1622. Type one is handled by ControlActionProcPtr which is defined in the
  1623. Universal Header's Controls.h file.
  1624.  
  1625. Type two is not handled. There should be a
  1626. ControlIndicatorActionProcPtr and there isn't.
  1627.  
  1628. +++++++++++++++++++++++++++
  1629.  
  1630. >From wdh@netcom.com (Bill Hofmann)
  1631. Date: Thu, 30 Jun 1994 15:50:45 GMT
  1632. Organization: Fresh Software
  1633.  
  1634. In article <osterCs7uG1.2x2@netcom.com>, oster@netcom.com (David Phillip
  1635. Oster) wrote:
  1636. > I am still using Apple's Universal Headers that came with THINK C 7,
  1637. > and I want to know if a missing piece in them has been fixed.
  1638. >...
  1639. > Type one is handled by ControlActionProcPtr which is defined in the
  1640. > Universal Header's Controls.h file.
  1641. > Type two is not handled. There should be a
  1642. > ControlIndicatorActionProcPtr and there isn't.
  1643. You're right.  It's a bug.  Report it to Apple.Bugs and MPW.Bugs at
  1644. Applelink.apple.com.  I've found a few other ommissions.  Hapily, the
  1645. people maintaining the headers are amenable to bug reports.
  1646. -- 
  1647. Bill Hofmann                                   wdh@netcom.com
  1648. Fresh Software and Instructional Design        voice: +1 510 524 0852
  1649. 1640 San Pablo Ave #C, Berkeley CA 94702 USA   fax:   +1 510 524 0853
  1650.  
  1651. ---------------------------
  1652.  
  1653. >From Kevin.R.Boyce@gsfc.nasa.gov (Kevin R. Boyce)
  1654. Subject: Where does data go when no PPCRead is pending?
  1655. Date: Tue, 28 Jun 1994 15:22:50 -0400
  1656. Organization: NASA/GSFC
  1657.  
  1658. Another PPC question:
  1659.  
  1660. What happens to data that gets sent to a port using PPCWrite when there is
  1661. no PPCRead pending on the other end?  Apparently it all just squirts out
  1662. the end of the pipe and onto the floor.  Is this true?  This would actually
  1663. be A Good Thing, since the only way I could be sent data I haven't
  1664. specifically asked for is if the user sticks his hands up something they
  1665. don't belong.  I just don't want to have trouble later with people slipping
  1666. on all that gooey data....
  1667.  
  1668. -- 
  1669. Kevin      Kevin.R.Boyce@gsfc.nasa.gov
  1670.         -- Happy 100th, Lowell Observatory and GAS --
  1671.  
  1672. +++++++++++++++++++++++++++
  1673.  
  1674. >From jumplong@aol.com (Jump Long)
  1675. Date: 29 Jun 1994 02:32:05 -0400
  1676. Organization: America Online, Inc. (1-800-827-6364)
  1677.  
  1678. In article <Kevin.R.Boyce-280694152250@sofa.gsfc.nasa.gov>,
  1679. Kevin.R.Boyce@gsfc.nasa.gov (Kevin R. Boyce) writes:
  1680.  
  1681. >What happens to data that gets sent to a port using PPCWrite when
  1682. there is
  1683. >no PPCRead pending on the other end?  Apparently it all just squirts
  1684. out
  1685. >the end of the pipe and onto the floor. Is this true? This would
  1686. actually
  1687. >be A Good Thing, since the only way I could be sent data I haven't
  1688. >specifically asked for is if the user sticks his hands up something
  1689. they
  1690. >don't belong.  I just don't want to have trouble later with people
  1691. slipping
  1692. >on all that gooey data....
  1693.  
  1694. The PPC Toolbox is implemented on top of ADSP which, unless the
  1695. connection breaks, is not supposed to loose data (and doesn't as far
  1696. as I know).
  1697.  
  1698. So, what happens to data passed to PPCWrite if there's no PPCRead
  1699. pending?  First, it sits in the senders buffers until PPC can pass it
  1700. off to ADSP. It can do that when ADSP has room in the send queue for
  1701. the data. Then, it sits in the ADSP send queue until there's room in
  1702. the receiver's ADSP receive queue.  Then, it sits in the ADSP receive
  1703. queue until that end of the connection reads it with a PPCRead
  1704. request.
  1705.  
  1706. Off the top of my head, I can't tell you how big the ADSP send and
  1707. receive buffers used by PPC Toolbox are, but you should be able to
  1708. find out by breaking on dspInit and looking at the ADSP connection
  1709. control block passed in by the PPC Toolbox code.
  1710.  
  1711. If you want to know more about ADSP, see Inside AppleTalk second
  1712. edition (for how the protocol works) and either Inside Macintosh
  1713. Volume VI, chapter 32 "The AppleTalk Manager" or Inside Macintosh:
  1714. Networking, chapter 5 "AppleTalk Data Stream Protocol".
  1715.  
  1716. If you want to know more about the PPC Toolbox, I believe APDA sells
  1717. a document that tells how to implement the PPC Toobox on top of NBP
  1718. and ADSP (this document doesn't describe the Macintosh implementation
  1719. in detail. Instead, it's intended audience are developer implementing
  1720. the PPC Toolbox on non-Macintosh platforms).
  1721.  
  1722. - Jim Luther
  1723.  
  1724.  
  1725. ---------------------------
  1726.  
  1727. End of C.S.M.P. Digest
  1728. **********************
  1729.  
  1730.  
  1731. ˇ